Skip to content

DX-2809: document step-level flow control and retries - #898

Merged
CahidArda merged 2 commits into
mainfrom
DX-2809-step-level-flow-control
Oct 28, 2026
Merged

CahidArda merged 2 commits into
mainfrom
DX-2809-step-level-flow-control

Conversation

@CahidArda

Copy link
Copy Markdown
Contributor

Docs for step-level flow control and retries (context.run(name, fn, { flowControl, retries, retryDelay })).

SDK: upstash/workflow-js#206 · Server: upstash/qstash-server#1058 (merged, in v2.40.6+)

  • features/flow-control — replaces the "no per-step configuration" note with a Step-level Flow Control section, including when the hidden extra request is (not) needed
  • features/retries — Configure Retries for a Single Step
  • steps/run — the options argument
  • steps — context.flowControl, context.retries, context.retryDelay
  • howto/configure — replaces the invoke workaround tip; fixes the call/invoke links that both pointed at context.run

Draft until the SDK release that ships #206.

@mintlify

mintlify Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
upstash 🟢 Ready View Preview Oct 7, 2026, 9:50 AM

💡 Tip: Enable Automations to automatically generate PRs for you.

@linear-code

linear-code Bot commented Oct 7, 2026

Copy link
Copy Markdown

DX-2809

@context7

context7 Bot commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Docs7 for upstash.com

Result Status Action
Deployment ✅ Ready Open preview
Content review ✅ Passed. No problems found. View findings

Commit a74b6c0 · Updated 2026-10-07 09:53 UTC · View build details

@context7
context7 Bot temporarily deployed to Docs7 Preview: DX-2809-step-level-flow-control October 7, 2026 09:53 Destroyed
@CahidArda
CahidArda marked this pull request as ready for review October 28, 2026 10:03
Copilot AI balanced review requested due to automatic review settings October 28, 2026 10:03
@CahidArda
CahidArda merged commit 0aa1d9f into main Oct 28, 2026
3 of 4 checks passed
@CahidArda
CahidArda deleted the DX-2809-step-level-flow-control branch October 28, 2026 10:03
Copilot stopped reviewing on behalf of CahidArda due to an error October 28, 2026 10:24
Copilot stopped reviewing on behalf of CahidArda due to an error October 28, 2026 10:45

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

Copilot was unable to run its full agentic suite in this review.

Copilot review overview

4 open issues
What changed in this PR

Adds documentation for per-step overrides of flow control and retry behavior in Upstash Workflow, and exposes the applied configuration on the context object.

Changes:

  • Document context.run step-level options (flowControl, retries, retryDelay) and link to the relevant feature guides.
  • Add docs explaining step-level flow control behavior (including when an extra request is published).
  • Add a new “Configure retries for a single step” section and update “configure” how-to links.
File Description
workflow/​steps/​run.mdx Documents a new optional options argument for context.run with flow control + retry overrides.
workflow/​steps.mdx Documents context.flowControl, context.retries, and context.retryDelay fields.
workflow/​howto/​configure.mdx Updates links and revises guidance to mention step-level overrides for context.run.
workflow/​features/​retries.mdx Adds a section showing how to override retries/retryDelay for a single step.
workflow/​features/​flow-control.mdx Adds a “Step-level Flow Control” section describing per-step overrides and implications.
llms-full.txt Mirrors the documentation updates in the aggregated LLM export.

Review effort: Lite

`context.sleepUntil` step, its configuration is attached to the request which delivers it, at no extra cost.
In other cases (for example, when it is the first step of a run or comes after a `context.call`),
the SDK publishes an additional hidden request to apply the configuration. This request is not shown in the
workflow logs.

The retry configuration of a run applies to all of its steps. You can override it for a single `context.run`
step by passing `retries` and `retryDelay` as the third argument:

If you want to specifically throttle a step, there is a workaround by splitting step to another workflow and using `context.invoke()`.
</Tip> No newline at end of file
A single `context.run` step can override the run's flow control and retry configuration by passing
`flowControl`, `retries` or `retryDelay` as its third argument. See
Comment thread workflow/steps/run.mdx
Comment on lines +29 to +38
<ParamField body="flowControl" type="object">
Flow control configuration with `key`, `rate`, `parallelism` and `period`, the same shape as in
[client.trigger](/workflow/basics/client/trigger). Replaces the run's flow control for this step.
</ParamField>

<ParamField body="retries" type="number">
How many times the step is retried when it fails.
</ParamField>

<ParamField body="retryDelay" type="string">

This branch was successfully deployed

1 active deployment
Docs7 Preview: DX-2809-step-level-flow-control — a74b6c0e Deployed Oct 7, 2026 by context7[bot]
staging — a74b6c0e Deployed Oct 7, 2026 by mintlify[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants